package org.jeecg.modules.demo.storeinfo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description: 店铺信息
 * @Author: jeecg-boot
 * @Date: 2022-01-20
 * @Version: V1.0
 */
@Data
@TableName("store_info")

@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "store_info对象", description = "店铺信息")
public class StoreInfo implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人")
    private String createBy;

    /**
     * 更新人
     */
    @ApiModelProperty(value = "更新人")
    private String updateBy;
    /**
     * 更新日期
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private Date updateTime;
    /**
     * 所属部门
     */
    @ApiModelProperty(value = "所属部门")
    private String sysOrgCode;
    /**
     * 店铺名称
     */
    @Excel(name = "店铺名", width = 15)
    @ApiModelProperty(value = "店铺名称")
    private String storeName;
    /**
     * 店铺名称
     */
    @Excel(name = "是否显示8个按钮    , width = 15)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ", width = 15)
    @ApiModelProperty(value = "是否显示8个按钮")
    private String showButton;

    @Excel(name = "小程序是否显示    , width = 15)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ", width = 15)
    @ApiModelProperty(value = "是否显示8个按钮")
    private String isShow;

    /**
     * 店铺名称
     */
    @Excel(name = "提前预约时间(小时) , width = 15)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       ", width = 15)
    @ApiModelProperty(value = "提前预约时间(小时)")
    private Integer prebookHours;
    /**
     * 店长姓名
     */
    @Excel(name = "店长姓名", width = 15)
    @ApiModelProperty(value = "店长姓名")
    private String storeManagerName;
    /**
     * 联系方式
     */
    @Excel(name = "联系方式", width = 15)
    @ApiModelProperty(value = "联系方式")
    private String storePhone;
    @Excel(name = "老板账号", width = 15)
    private String bossName;
    /**
     * 地址
     */
    @Excel(name = "地址", width = 15)
    @ApiModelProperty(value = "地址")
    private String storeCity;
    /**
     * 营业状态
     */
    @Excel(name = "营业状态", width = 15)
    @ApiModelProperty(value = "营业状态")
    private String operatingState;
    /**
     * 创建日期
     */
    @Excel(name = "开通时间", width = 15, format = "yyyy-MM-dd")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private Date createTime;
    /**
     * 店铺有效期
     */
    @Excel(name = "到期时间", width = 15, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "店铺有效期")
    private Date storeExpiryDate;
    /**
     * 创建日期
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty(value = "创建日期")
    private Date dateCreated;
    /**
     * 店铺编号
     */
    @ApiModelProperty(value = "店铺编号")
    private String storeCode;
    /**
     * 主题信息
     */
    @ApiModelProperty(value = "主题信息")
    private String thematicIndo;
    /**
     * 店铺认证
     */
    @ApiModelProperty(value = "店铺认证")
    private String shopCertification;
    /**
     * 主营类目
     */
    @ApiModelProperty(value = "主营类目")
    private String mainCategories;

    /**
     * 店铺Logo
     */
    @ApiModelProperty(value = "店铺Logo")
    private String logo;
    /**
     * 店铺简介
     */
    @ApiModelProperty(value = "店铺简介")
    private String shopIntroduction;
    /**
     * 店长QQ
     */
    @ApiModelProperty(value = "店长QQ")
    private String managerQq;
    /**
     * 主题信息
     */
    @ApiModelProperty(value = "主题信息")
    private String thematicInformation;

    /**
     * 色系主题
     */
    @ApiModelProperty(value = "色系主题")
    private String colorTheme;

    /**
     * 详细地址
     */
    @ApiModelProperty(value = "详细地址")
    private String storeAddress;
    @ApiModelProperty(value = "经度")
    private BigDecimal lng;
    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    private BigDecimal lat;
    /**
     * 公众号账号
     */
    @ApiModelProperty(value = "公众号账号")
    private String officialAccounts;
    /**
     * 小程序账号
     */
    @ApiModelProperty(value = "小程序账号")
    private String miniAccount;
    /**
     * 营业时间始
     */
    @JsonFormat(timezone = "GMT+8", pattern = "HH:mm:ss")
    @DateTimeFormat(pattern = "HH:mm:ss")
    @ApiModelProperty(value = "营业时间始")
    private Date businessStart;
    /**
     * 营业时间止
     */
    @JsonFormat(timezone = "GMT+8", pattern = "HH:mm:ss")
    @DateTimeFormat(pattern = "HH:mm:ss")
    @ApiModelProperty(value = "营业时间止")
    private Date businessEnd;
    /**
     * 店铺banner
     */
    @ApiModelProperty(value = "店铺banner")
    private String storeBanner;
    /**
     * 店铺视频
     */
    @ApiModelProperty(value = "店铺视频")
    private String storeVideo;
    /**
     * 升级股东图
     */
    @ApiModelProperty(value = "升级股东图片")
    private String stockPhoto;
    /**
     * 店铺图片
     */
    @ApiModelProperty(value = "店铺图片")
    private String storePhoto;
    /**
     * 视频封面
     */
    @ApiModelProperty(value = "视频封面")
    private String storeVideoCover;
    /**
     * 视频文件
     */
    @ApiModelProperty(value = "视频文件")
    private String storeVideoFile;
    /**
     * 关联账号权限
     */
    @ApiModelProperty(value = "关联账号权限")
    private String userId;

    /**
     * 关联账号权限
     */
    @ApiModelProperty(value = "关联账号权限")
    private String rechargeId;

    private String username;

    @JsonProperty(access = JsonProperty.Access.WRITE_ONLY)
    private String password;

    private String bossId;


    private String xcxAppId;
    private String xcxAppSecret;

    private String gzhAppId;
    private String gzhAppSecret;
    private String gzhStoreName;
    private String gzhToken;
    private String gzhAesKey;

    private String saobeiMerchantNo;
    private String saobeiTerminalId;
    private String saobeiAccessToken;

    private String gzUrl;
}
